package models

import (
	"gorm.io/gorm"
)

type PointRecord struct {
	gorm.Model
	UserID  uint    `gorm:"not null"`
	User    User    `gorm:"foreignKey:UserID"`
	OrderID *uint   // 关联订单ID，可以为空（比如系统赠送积分）
	Points  int     `gorm:"not null"` // 正数表示获得，负数表示使用
	Type    string  `gorm:"not null"` // 积分类型：consume（消费获得）, use（使用积分）, system（系统赠送）
	Amount  float64 // 关联的消费金额
	Remark  string  // 备注说明
}

// 积分规则配置
type PointRule struct {
	gorm.Model
	Type        string  `gorm:"unique;not null"` // 规则类型
	Rate        float64 `gorm:"not null"`        // 积分比率，例如：10表示每消费1元获得10积分
	Description string  // 规则说明
}
